//
// Description: 893. 集合-Nim游戏
// Created by Loading on 2022/5/27.
//

#include <bits/stdc++.h>

using namespace std;

constexpr int N = 110, M = 10010;

// f_sg 表示每个状态的 sg值，S 表示允许拿取石子个数集合
int f_sg[M], S[N];
int k, n;

int sg(int x) {
    if (f_sg[x] != -1) {
        return f_sg[x];
    }

    // x 的后继 sg 值集合
    unordered_set<int> s;
    for (int i = 0; i < k; ++i) {
        int t = S[i];
        if (x >= t) {
            s.insert(sg(x - t));
        }
    }

    // 寻找集合中第一个未出现的整数，即为 x 的 sg 状态，终止状态为 0
    for (int i = 0; ; ++i) {
        if (!s.count(i)) {
            return f_sg[x] = i;
        }
    }
}

int main() {
    // 初始化 f_sg 数组
    memset(f_sg, -1, sizeof f_sg);

    cin >> k;
    for (int i = 0; i < k; ++i) {
        cin >> S[i];
    }

    // 将所有起始 sg 状态异或，与基本 Nim 博弈类似
    int res = 0;
    cin >> n;
    while (n--) {
        int x;
        cin >> x;
        res ^= sg(x);
    }

    if (res) {
        cout << "Yes" << endl;
    } else {
        cout << "No" << endl;
    }

    return 0;
}